题解:P16247 [蓝桥杯 2026 省研究生组] 魔法矩阵能量值

182 字
1 分钟
题解:P16247 [蓝桥杯 2026 省研究生组] 魔法矩阵能量值

题面传送门:P16247 [蓝桥杯 2026 省研究生组] 魔法矩阵能量值

题目大意#

根据计算规则模拟求各项能量值之和。

思路讲解#

注意到此题目 n=13n=13,可使用循环枚举出各个位置能量值,再相加。

题目强调,我们必须顺次执行计算规则。可使用多个并列的 if 语句来实现。

代码实现#

AC代码
#include<bits/stdc++.h>
using namespace std;
int n=13,a[15][15],sum;
int main(){
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
a[i][j]=i*j*(i+j);
if(i==j) a[i][j]*=2;
if(i==1||i==n||j==1||j==n) a[i][j]/=2;
if(i==(n+1)/2&&i==j) a[i][j]+=100;//由于13是奇数,所以必有中心点
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
sum+=a[i][j];
}
}
cout<<sum;
return 0;
}

此代码也有值得优化的地方。如:改数组为变量节省空间;合并两层循环等。

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

题解:P16247 [蓝桥杯 2026 省研究生组] 魔法矩阵能量值
https://zhedaotixuanbo.pages.dev/posts/题解:P16247 [蓝桥杯 2026 省研究生组] 魔法矩阵能量值/
作者
zhedaotixuanbo
发布于
2026-04-12
许可协议
CC BY-NC-SA 4.0
Profile Image of the Author
zhedaotixuanbo
这道题选什么? _____!
公告
分类
标签
站点统计
文章
17
分类
1
标签
21
总字数
6,295
运行时长
0 天
最后活动
0 天前
站点信息
构建平台
Cloudflare Pages
博客版本
ZTXB v1.0.0
文章许可
CC BY-NC-SA 4.0